home *** CD-ROM | disk | FTP | other *** search
- *os_dos.txt* For Vim version 5.1. Last modification: 1998 Mar 15
-
-
- VIM REFERENCE MANUAL by Bram Moolenaar
-
-
- *dos*
- This file documents the common particularities of the MS-DOS and Win32
- versions of Vim. Also see |os_win32.txt| and |os_msdos.txt|.
-
- 1. File locations |dos-locations|
- 2. Using backslashes |dos-backslash|
- 3. Standard mappings |dos-standard-mappings|
- 4. Screen output and colors |dos-colors|
- 5. File formats |dos-file-formats|
- 6. :cd command |dos-:cd|
- 7. Interrupting |dos-CTRL-Break|
- 8. Temp files |dos-temp-files|
- 9. Shell option default |dos-shell|
-
- ==============================================================================
- 1. File locations *dos-locations*
-
- If you keep the Vim executable in the same directory as the help and syntax
- files, there is no need to do anything special for Vim to work. No registry
- entries or environment variables need to be set. Just make sure that the
- directory is in your search path, or use a shortcut on the desktop.
-
- If the executable is in a different directory than the support files, you
- should set the environment variable $VIM to the directory where the Vim
- documentation files are. If $VIM is used but not defined, $HOME is tried too.
-
- Under Windows 95, $VIM can be set in your C:\autoexec.bat file. For example:
- > set VIM=D:\vim
- Under Windows NT, you can set environment variables for each user separately,
- under "Start/Settings/Control Panel->System". Or get the properties from the
- menu of "My Computer", in the Environment Tab.
-
- If the $HOME environment variable is not set, the value "C:/" is used as a
- default.
-
- If no $VIM or $HOME environment variables are set, then vim (gvim) will
- find the _vimrc file in the same directory as the vim (gvim) executable.
-
- Likewise, the documentation will be found in the doc subdirectory of that
- place, and the $VIM internal variable will be set to the exe place. This
- means you will be able to edit the _vimrc file by doing:
- > :e $VIM/_vimrc
-
- The default help file name is "$VIM\doc\help.txt". If the environment variable
- $VIM is not defined or the file is not found, the DOS or Win32 search path is
- used to search for the file "help.txt". If you do not want to put "help.txt"
- in your search path, use the command ":set helpfile=pathname" to tell Vim
- where the help file is. Also see |$VIM| and |'helpfile'|.
-
- Vim will look for initializations in eight places. The first that is found
- is used and the others are ignored. The order is:
- - The environment variable $VIMINIT
- - The file "$VIM/_vimrc"
- - The file "$HOME/_vimrc"
- - The file "$VIM/.vimrc"
- - The file "$HOME/.vimrc"
- - The environment variable $EXINIT
- - The file "$VIM/_exrc"
- - The file "$HOME/_exrc"
-
- ==============================================================================
- 2. Using backslashes *dos-backslash*
-
- Using backslashes in file names can be a problem. Vi halves the number of
- backslashes for some commands. Vim is a bit more tolerant and backslashes
- are not removed from a file name, so ":e c:\foo\bar" works as expected. But
- when a backslash is used before a special character (space, comma, backslash,
- etc.), it is removed. Use slashes to avoid problems: ":e c:/foo/bar" works
- fine. Vim will replace the slashes with backslashes internally, to avoid
- problems with some MS-DOS programs and Win32 programs.
-
- ==============================================================================
- 3. Standard mappings *dos-standard-mappings*
-
- CTRL-PageUp cursor to first screen line *<C-PageUp>*
- CTRL-PageDown cursor to last screen line, last character *<C-PageDown>*
-
- This is accomplished with these mappings:
-
- key key code Normal/Visual mode Insert mode ~
- CTRL-PageUp <M-N><M-C-D> H <C-O>H
- CTRL-PageDown <M-N>v L$ <C-O>L<C-O>$
-
- Additionally, these keys are used for copy/cut/paste. Only in the Win32
- version they use the clipboard.
-
- Shift-Insert paste text (from clipboard) *<S-Insert>*
- CTRL-Insert copy Visual text (to clipboard) *<C-Insert>*
- CTRL-Del cut Visual text (to clipboard) *<C-Del>*
- Shift-Del cut Visual text (to clipboard) *<S-Del>*
-
- This is accomplished with these mappings (Win32 version of Vim):
-
- key key code Normal Visual Insert ~
- Shift-Insert <M-N><M-T> "*P ""d"*P <C-O>"*P
- CTRL-Insert <M-N><M-U> "*y
- Shift-Del <M-N><M-W> "*d
- CTRL-Del <M-N><M-X> "*d
-
- Or these mappings (non-Win32 version of Vim):
-
- key key code Normal Visual Insert ~
- Shift-Insert <M-N><M-T> P d"0P <C-O>P
- CTRL-Insert <M-N><M-U> y
- Shift-Del <M-N><M-W> d
- CTRL-Del <M-N><M-X> d
-
- ==============================================================================
- 4. Screen output and colors *dos-colors*
-
- The default output method for the screen is to use bios calls. This will work
- right away on most systems. You do not need ansi.sys. You can use ":mode" to
- set the current screen mode. See |:mode|.
-
- To change the screen colors that Vim uses, the |:highlight| command can be
- used. The Normal highlight group has the colors to be used for normal text.
- For example, to get grey text on a blue background:
- :hi Normal ctermbg=Blue ctermfg=grey
- See |highlight-groups| for other groups that can be used.
-
- A DOS console does not support attributes like bold and underlining. You can
- set the color used in five modes with nine termcap options. Note that this is
- not really needed, since you can set the color directly with the ":highlight"
- command. This is for backwards compatibility with older Vim versions.
- Which of the five modes is used for which action depends on the |'highlight'|
- option.
-
- ":set t_mr=^V^[\|xxm" start of invert mode
- ":set t_md=^V^[\|xxm" start of bold mode
- ":set t_me=^V^[\|xxm" back to normal text
-
- ":set t_so=^V^[\|xxm" start of standout mode
- ":set t_se=^V^[\|xxm" back to normal text
-
- ":set t_us=^V^[\|xxm" start of underline mode
- ":set t_ue=^V^[\|xxm" back to normal text
-
- ":set t_ZH=^V^[\|xxm" start of italics mode
- ":set t_ZR=^V^[\|xxm" back to normal text
-
- ^V is CTRL-V
- ^[ is <Esc>
- xx must be replaced with a decimal code, which is the foreground color number
- and background color number added together:
-
- COLOR FOREGROUND BACKGROUND ~
- Black 0 0
- DarkBlue 1 16
- DarkGreen 2 32
- DarkCyan 3 48
- DarkRed 4 64
- DarkMagenta 5 80
- Brown 6 96
- LightGray 7 112
- DarkGray 8 128 *
- Blue, LightBlue 9 144 *
- Green, LightGreen 10 160 *
- Cyan, LightCyan 11 176 *
- Red, LightRed 12 192 *
- Magenta, LightMagenta 13 208 *
- Yellow 14 224 *
- White 15 240 *
-
- * Depending on the display mode, the color codes above 128 may not be
- available, and code 128 will make the text blink.
-
- When you use 0, the color is reset to the one used when you started Vim
- (usually 7, lightgray on black, but you can override this. If you have
- overridden the default colors in a command prompt, you may need to adjust
- some of the highlight colors in your vimrc---see below).
- This is the default for t_me.
-
- The defaults for the various highlight modes are:
- t_mr 112 reverse mode: Black text (0) on LightGray (112)
- t_md 15 bold mode: White text (15) on Black (0)
- t_me 0 normal mode (revert to default)
-
- t_so 31 standout mode: White (15) text on DarkBlue (16)
- t_se 0 standout mode end (revert to default)
-
- t_czh 225 italic mode: DarkBlue text (1) on Yellow (224)
- t_czr 0 italic mode end (revert to default)
-
- t_us 67 underline mode: DarkCyan text (3) on DarkRed (64)
- t_ue 0 underline mode end (revert to default)
-
- These colors were chosen because they also look good when using an inverted
- display, but you can change them to your liking.
-
- Example:
- > :set t_mr=^V^[\|97m " start of invert mode: DarkBlue (1) on Brown (96)
- > :set t_md=^V^[\|67m " start of bold mode: DarkCyan (3) on DarkRed (64)
- > :set t_me=^V^[\|112m " back to normal mode: Black (0) on LightGray (112)
- >
- > :set t_so=^V^[\|37m " start of standout mode: DarkMagenta (5) on DarkGreen
- > (32)
- > :set t_se=^V^[\|112m " back to normal mode: Black (0) on LightGray (112)
-
- ==============================================================================
- 5. File formats *dos-file-formats*
-
- If the 'fileformat' option is set to "dos" (which is the default), Vim will
- accept a single <NL> or a <CR><NL> pair for end-of-line (<EOL>). When writing
- a file, Vim will use <CR><NL>. Thus, if you edit a file and write it, <NL> is
- replaced with <CR><NL>.
- If the 'fileformat' option is set to "unix", a single <NL> will be used for
- <EOL>. A <CR> will be shown as ^M.
- You can use Vim to replace <NL> with <CR><NL> by reading in any mode and
- writing in Dos mode (":se ff=dos").
- You can use Vim to replace <CR><NL> with <NL> by reading in Dos mode and
- writing in Unix mode (":se ff=unix").
- 'fileformat' is set automatically when 'fileformats' is not empty (which is
- the default), so you don't really have to worry about what you are doing.
- |'fileformat'| |'fileformats'|
-
- If you want to edit a script file or a binary file, you should set the
- 'binary' option before loading the file. Script files and binary files may
- contain single <NL> characters which would be replaced with <CR><NL>. You can
- set 'binary' automatically by starting Vim with the "-b" (binary) option.
-
- ==============================================================================
- 6. :cd command *dos-:cd*
-
- The ":cd" command recognizes the drive specifier and changes the current
- drive. Use ":cd c:" to make drive C the active drive. Use ":cd d:\foo" to go
- to the directory "foo" in the root of drive D. UNC names are also recognized
- (if the system supports them); e.g., ":cd \\server\share\dir". |:cd|
-
- ==============================================================================
- 7. Interrupting *dos-CTRL-Break*
-
- Use CTRL-Break instead of CTRL-C to interrupt searches. The CTRL-C is not
- detected until a key is read.
-
- ==============================================================================
- 8. Temp files *dos-temp-files*
-
- Temporary files (for filtering) are put in the first directory in the next
- list that exists and where a file can be created:
- $TMP
- $TEMP
- C:\TMP
- C:\TEMP
- current directory
-
- ==============================================================================
- 9. Shell option default *dos-shell*
-
- The default for the 'sh' ('shell') option is "command.com" on Windows 95 and
- "cmd.exe" on Windows NT. If SHELL is defined, it is used instead, and if
- SHELL is not defined but COMSPEC is, COMPSPEC is used. External commands are
- started with "<shell> /c <command_name>". Typing CTRL-Z starts a new
- command subshell. Return to Vim with "exit". |'shell'| |CTRL-Z|
-
- If you are running a third-party shell, you may need to set the
- |'shellcmdflag'| ('shcf') and |'shellquote'| ('shq') or |'shellxquote'|
- ('sxq') options. Unfortunately, this also depends on the version of Vim used.
- For example, with the MKS Korn shell or with bash, the values of the options
- should be:
-
- DOS 16 bit DOS 32 bit Win32 ~
- 'shellcmdflag' -c -c -c
- 'shellquote' "
- 'shellxquote' "
-
- For Dos 16 bit this will start the shell as:
- <shell> -c "command name" >file
- For Win32 as:
- <shell> -c "command name >file"
- For DOS 32 bit, DJGPP does this internally somehow.
-
- When starting up, Vim will check for the presence of "sh" anywhere in the
- 'shell' option. If it is present, the 'shellcmdflag' and 'shellquote' or
- 'shellxquote' options will be set as mentioned above
-
- vim:ts=8:sw=8:tw=78:
-